/*
 * Interaction.h
 *
 *  Created on: Mar 2, 2011
 *      Author: wjfortin
 */
#ifndef INTERACTION_H_
#define INTERACTION_H_

class Interaction;

#include "../data/Molecule.h"
#include "../org/Term.h"

using namespace std;

class Interaction {
public:
	Interaction(Quantity*, float, float, const char*);
	Interaction(float, float, float, const char*);
	virtual ~Interaction();

	float getRate();
	float getRate(int);
	void setRate(float);
	float getSubstrateFactor();
	float getProductFactor();

	Term* getTerm();

	void setProductFactor(float);

	const char* name;

private:
	Term* rate;
	float substrateFactor;
	float productFactor;
};

#endif /* INTERACTION_H_ */
